package org.proxycine.gestsalles.tests;

import java.sql.Date;

import org.junit.Test;
import org.proxycine.gestsalles.model.entities.Film;
import org.proxycine.gestsalles.model.entities.GenreFilm;
import org.proxycine.gestsalles.services.FilmService;
import org.proxycine.gestsalles.web.beans.ModifierFilmBean;

import junit.framework.TestCase;

public class ModifierFilmBeanTest extends TestCase {
	
	@Test
	public void testModifFilm(){
		
		// On ajoute un film test dans la base de données
		Film filmTest = new Film("film test", "synopsis test", 190, GenreFilm.Action, 
				Date.valueOf("2012-01-01"), "Français", "realisateur", "acteurs", 4);
		int idFilm = FilmService.getInstance().insertFilm(filmTest);
		filmTest.setId(idFilm);
		
		//On modifie localement ce film test
		String newTitle = "new title";
		filmTest.setTitre(newTitle);
		
		// on valide la modification
		ModifierFilmBean bean = new ModifierFilmBean();
		bean.setSelectedFilm(filmTest);
		bean.valideModification();
		System.out.println("titre modif dans bean: " + bean.getSelectedFilm().getTitre());
		
		// On vérifie que le film a bien été modifié en base de données
		Film filmModifie = FilmService.getInstance().getFilm(idFilm);
		assertEquals(newTitle, filmModifie.getTitre());
			System.out.println("[TEST] MODIFICATION FILM : ok");

		FilmService.getInstance().removeFilm(idFilm);
		
	}

}
